前面 Day7 有講過超級電腦(資料中心)和IaaS平台之間的關係 🛠️,在 Day9 提到了local LLM和雲端LLM服務的差異 ☁️⚖️,而 Day20 稍微提到了從server到LLM應用服務之間的過程 🔄🛤️,儘管如此,這些介紹可能仍顯得抽象,有許多概念可以再深入補充。
Day20 提到的其中一種可能的設計,乍看之下就只有一台機器:
[程式碼] -> [編譯] -> [測試] -> [打包] -> [容器化] -> [伺服器 / VM / Kubernetes] -> [網路與分流] -> [負載均衡] -> [LLM 服務] -> [LLM 服務監控]
雲端LLM服務的server一定不會只有一台,那很多台的話infra架構是什麼樣子的?
🔍 本章節要來了解:
- 有IaaS平台,也有全部local的環境,能全都要嗎? 🌀
- 多台server如何一起工作? 🤝
- 資料中心的安全探討 🔒
接下來就將與先前提過的內容串在一起,將前面寫得不夠清楚的地方補充得更清楚一些,因此本章節希望能引領讀者更了解從資料中心(或小型機房)到App之間的完整過程!
(圖源: Meme 梗圖倉庫)
企業主要的基礎建設主要分成三種:
管這三種架構方式有所不同,它們的核心仍是基於機房與資料中心,主要的差異在於誰負責維護和管理這些資源。
在處理大型應用程式(如LLM服務)的時候,單台伺服器往往無法應對龐大的運算和儲存需求。為了應付這些挑戰,通常會將多台伺服器組合成一個伺服器集群(Cluster),並使用虛擬化技術來有效管理伺服器資源。這裡以VMware vCenter管理VM的架構為例,來說明多台伺服器如何協同工作:
(圖源: VMware docs,圖的最右邊在每台ESXi上可以有多個VM)
vCenter 🛰️
分佈式虛擬交換機(Virtual Distributed Switch, VDS) 🖧
集群(Cluster) / 邊緣集群(Edge Cluster) 🏙️
ESXi 主機(ESXi Host) ⚙️
虛擬機器(Virtual Machines, VM) 🖥️
這些VM們可以是工程師的測試環境、上面放容器變成APP服務的地方,要怎麼規劃都可以。
而Infra架構的設計可以是很彈性的,設計的方式很多,不一定只有這種架構方式。不過,如果僅依賴VMware架構還有一些不足之處,像是VM啟動較慢 🕒、資源佔用大 💽,且擴展性有限 📉,難以應對大規模的服務需求。因此可能可以結合kubernetes能更有效地管理服務,提供更靈活的資源調度 🚀,這部分將在明天的內容提到!
這一段是在查資料時查到有趣的部份,放上來分享。
駭客怕物理攻擊,而資料中心也是,目前網路上資料最公開的是Google,Google資料中心最著名的就是他以Google logo顏色去設計的色彩繽紛的冷卻系統管線,而台灣也有一座資料中心在彰化西濱工業區裡面!
這部分參考自: 資料與安全性
Google Data Center Security: 6 Layers Deep
Google的六層保護機制分別是:外牆(爬了會被發現)、監視器與警衛(車輛防撞護欄)、進去建築後會需要security card和生物特徵辨識、有24/7的值班監控中心、一次只能一人通過的機房、最後一層是特殊的器材報廢區
一般的機房的確是不會有這麼多層的保護,更不會有車輛防撞護欄去阻止萬一有大貨車想撞進來,不過看到這個影片喚醒了筆者很久以前的記憶,最讓人印象深刻的的確是機房刷卡一次只能一個人通過的管制機制。這影片是說低與1%的googlers有機會可以進到機房中,所以如果想要進大機房去,歡迎加入infra team,也許有機會去(???)。
在這一章中介紹了企業infra可以選擇的幾種雲端架構模式 ☁️,並探討了在LLM應用中多台伺服器的需求對應的一種基礎建設設計方式 🏗️,學習到了cluster、HA、異地備援的概念!還深入了解了Google資料中心的安全設計 🛡️,展示了如何在大規模運算環境中確保資料的安全性與系統的穩定性 🔒。
這章想了很久要寫什麼比較好,關於資料中心和環保 🌱的議題在前面都已經講過了,如果講server機櫃的技術細節(如幾U幾U、線怎麼接)🖇️、VM寫到分散式儲存的vSAN又太過技術化,最後決定把寫之前沒有寫到的部分補起來,讓內容更加完整。
如果想進階學習VMware系列,IT邦幫忙上有很多很棒的文章都是在介紹它的,或是跟筆者一樣默默翻文件也行XD
明天將來探討VM上的容器與應用服務,以及分散式系統如何管理服務! 🔄
(圖源: programmerhumor)
關於 Google 資料中心
https://www.google.com/about/datacenters/